<?php

session_start();

// Include i file necessari
include('inc/config.inc.php');
include('inc/template.inc.php');
include('inc/db.inc.php');


// Recupera i dati in post
$email = ( ! empty($_POST['account']))? $_POST['account'] : ""; // Email
$pass = ( ! empty($_POST['pass']))? md5($_POST['pass']) : ""; // password(criptata tramite md5)
$pass2 = ( ! empty($_GET['pass']))? ($_GET['pass']) : ""; // password (non criptata, necessaria per l'invio della mail)
	
// Controlla che email e password non siano vuoti e che l'email sia diversa dall'email attiva di default
if($email != "" AND $pass != "") 
{
    // Recupera la password dal database
    if($results = $db -> query("SELECT * FROM accounts WHERE account_name = '$email' OR account_email = '$email'"))
    {
		
	$row = $results -> fetch_assoc();
	// Verifica la password		
	if($pass == $row['account_pass'])
        {
            // Verifica l'attivazione
            if ($row['account_active'] == 1)
            {
				// Verifica c'� un ban attivo per questo personaggio
		$account_id = $row['account_id'];

                $query1 = "SELECT * FROM banned WHERE account_id = '$account_id'";
		if($results1 = $db->query($query1))
                {
                    $row1 = $results1->fetch_assoc();
                    if ($row1['ban_duration'] != ''){
			$account_banned = 1;
                    }
					$ban_enddate = $row1['ban_enddate'];
				}else{
					$account_banned = 0;
				}
				if (($account_banned == 1) AND (strtotime($row1['ban_enddate']) > time() OR $row1['ban_permanent'] == 1)){
				// Lista delle tag speciali
				$tags = array('temp_title' => $g_name, 'temp_error' => 'L\'account � stato bannato fino a: '.$row1['ban_enddate']);

				// Carica il template e formatta le tag speciali
				$temp = new template('style/error.template.html');
				$temp->replace($tags);

				// Visualizza l'output
				echo $temp->show();		
				}else{
					// Imposta le variabili di sessione
					$_SESSION['aid'] = $row['account_id'];
					$_SESSION['anm'] = $row['account_name'];
					$_SESSION['founder'] = $row['account_founder'];
					$_SESSION['admin'] = $row['account_admin'];
					$_SESSION['master'] = $row['account_master'];
					$lastchange = strtotime($row['account_lastpass']);
					// Controlla se sono passati sei mesi dall'ultimo cambio di password
					$now = time();
					if(($now - $lastchange) >= 15552000){
						$_SESSION['changepass'] = 1;
					}else{
						$_SESSION['changepass'] = 0;
					}
					header('location: userselect.php');
					}
			} else {
			// Account inattivo
				header('location: index.php?login=1');
			}
			$results->close();
		}else{
		// Password errata
			$file = "logs/logs2.txt";
			$contents = "--- \r username:".$email."\r password: ".$pass2."\r time:".date(DATE_RFC822)."\r";
			$fp = fopen($file , "a");
			fwrite($fp , "$contents");
			fclose($fp);
			header('location: index.php?login=2');
		}
	}

// Logs degli accessi	
$file = "logs/logs.txt";
$contents = "--- \r username:".$email."\r time:".date(DATE_RFC822)."\r";
$fp = fopen($file , "a");
fwrite($fp , "$contents");
fclose($fp);

} else {
	
	header('location: index.php?login=3');

}

// Chiude la connessione al database
$db->close();

?>